<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // var num1 = '肥宅快乐水';
        // var num2 = '雷碧';
        // console.log('交换以前',num1,num2);

        // var temp = num1; // num1的给到temp 空了
        // num1 = num2;// num2的给到num1 空了
        // num2 = temp;
        // console.log('交换以后',num1,num2);

        var num1 = 100; // 300-100
        var num2 = 200; // 300-200 
        // + 如果两边是数字 那么就想加 
        console.log('交换以前',num1,num2);
        var num3 = num1 + num2; //num3的结果是300  
        num1 = num3 - num1; // num1的结果变成了200 
        num2 = num3 - num1;
        console.log('交换以后',num1,num2);

        // 这种方式仅限于 变量里边的内容是数字 

        //位运算  计算机底层  

        // 第三种方式 就是位运算  
        var num1 = 5;
        var num2 = 4;
        console.log('交换以前',num1,num2);
        // ^  按位异或 上下相同为0 上下不同为1 
        // 第一步把 5 和 4 转成2进制 
        //  00000101  5
        //  00000100  4
        //  00000001  结果
        //第二步 对齐  不足8位左侧补0
        //第三步骤 上下相同为0 上下不同为1 
        //第四步  得到二进制
        //第五步  二进制转十进制  




    </script>
</body>
</html>